home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Arsenal Files 8
/
The Arsenal Files Collection #8 (Arsenal Computer) (1996).ISO
/
pcboard
/
auct106.zip
/
AUCTION.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1996-10-24
|
16KB
|
657 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 3.2O (Encryption type I) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Boolean BOOLEAN001
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER007
Integer INTEGER008
Integer INTEGER009
Integer INTEGER010
Integer INTEGER011
Integer INTEGER012
Integer TINTEGER013(99)
String STRING001
String STRING002
String STRING003
String STRING004
String STRING005
String STRING006
String TSTRING007(10)
String STRING008
String STRING009
String STRING010
String STRING011
String STRING012
String STRING013
String STRING014
String STRING015
String STRING016
String STRING017
String STRING018
String STRING019
String TSTRING020(3)
String STRING021
Declare Procedure PROC001()
Declare Procedure PROC002()
Declare Procedure PROC003()
;------------------------------------------------------------------------------
Goto LABEL001
End
If (0 == 0) STRING001 = "NO"
If (0 == 1) STRING001 = "YES"
EndFunc
:LABEL001
STRING018 = "1.06"
INTEGER006 = 1
STRING012 = "@X0C!!! SOLD !!! !!! SOLD !!!@X0F"
STRING008 = String(PcbNode())
If (PcbNode() == 0) STRING008 = "A"
STRING009 = String(Random(1000)) + "X" + STRING008
DOpen 0, PPEPath() + "AUCTION.DBF", 0
DnCreate 0, PPEPath() + STRING009 + ".NDX", "ITEM_DESC"
DTop 0
If (Exist(PPEPath() + "UNIVERSL.KEY")) Then
PROC001()
ElseIf (Exist(PPEPath() + "UNI.KEY")) Then
PROC002()
Else
If (Exist(PPEPath() + "AUCTION.KEY")) Goto LABEL002
BOOLEAN001 = 0
Goto LABEL003
:LABEL002
FOpen 2, PPEPath() + "AUCTION.KEY", 0, 0
FGet 2, STRING013
FGet 2, STRING014
FGet 2, STRING015
FClose 2
If (Strip(Left(Upper(ReadLine(PCBDat(), 94)), 8), " ") <> "The TAO BBS") Then
If (Strip(Left(Upper(STRING014), 3), " ") <> Strip(Left(Upper(ReadLine(PCBDat(), 94)), 3), " ")) Then
STRING021 = "BBS Name does *NOT* match keyfile"
Goto LABEL012
Endif
Endif
STRING016 = Mid(STRING013, 2, 1)
STRING017 = Mid(STRING014, 5, 1)
STRING016 = Abs(Asc(STRING016) + 56 - 100)
STRING017 = Abs(Asc(STRING017) + 56 - 100)
If ((ToInteger(Mid(STRING015, 1, 2)) == ToInteger(Left(STRING016, 2))) && (ToInteger(Mid(STRING015, 79, 2)) == ToInteger(Left(STRING017, 2)))) Then
BOOLEAN001 = 1
Endif
Endif
:LABEL003
If (BOOLEAN001 == 1) Then
Cls
PrintLn "@X1C░▒▓█ @X1ESilent Auction v", STRING018, " @X1C█▓▒░ @X1F(c)1996 Practical Computer Services@X0F"
Newlines 2
PrintLn "@X0ERegistered to:@X0D ", STRING014
PrintLn " @X0E SysOp:@X0D ", STRING013, "@X0F"
Delay (1 * 182) / 10
Else
Cls
For INTEGER007 = 1 To 10
PrintLn "@X0EThis is @X8CUNREGISTERED @X0Esoftware - Please encourage your SysOp to register it!@X0F"
PrintLn " @X0APractical Computer Services Silent Auction@X0F"
Delay (1 * 182) / 10
If (INTEGER007 == 10) Delay 2 * 182 / 10
Next
Endif
DTop 0
If (DGet(0, "FINAL_DATE") == ToInteger(Date())) Goto LABEL004
DPut 0, "FINAL_DATE", ToInteger(Date())
DTop 0
If (DRecCount(0) == 1) Goto LABEL004
For INTEGER005 = 1 To DRecCount(0)
DSkip 0, 1
If (ToInteger(Date()) >= DGet(0, "FINAL_DATE") + 10) Then
DBlank 0
DDelete 0
Endif
If (ToInteger(Date()) >= DGet(0, "FINAL_DATE")) Then
DPut 0, "FINAL_DATE", 999999
DPut 0, "DESC_1", STRING012 + DGet(0, "DESC_1")
Backup 80
ClrEol
PrintLn "@X0EOne Moment...Sending out notifications...@X0F"
Gosub LABEL010
Endif
Next
DPack 0
:LABEL004
If (Exist(PPEPath() + "SCREEN1.DSP")) DispFile PPEPath() + "SCREEN1.DSP", 0
If (Exist(PPEPath() + "SCREEN2.DSP")) DispFile PPEPath() + "SCREEN2.DSP", 0
If (Exist(PPEPath() + "SCREEN3.DSP")) DispFile PPEPath() + "SCREEN3.DSP", 0
If (Exist(PPEPath() + "SCREEN4.DSP")) DispFile PPEPath() + "SCREEN4.DSP", 0
:LABEL005
Cls
PrintLn "@POS:1@@X1A■■@X1E Initializing Silent Auction @X1A■■@X1E ", "Total Records = @X1C", DRecCount(0) - 1, "@POS:79@@X0F"
Delay (1 * 182) / 10
:LABEL006
Cls
PrintLn "@X10┌─────────────────────────────────────────────────────────────────────────────@X19┐@X0F"
PrintLn "@X10│ @X1A░▒▓█ @X9ESilent Auction! v", STRING018, " @X1A█▓▒░ @X1F(c)1996 @X1EPractical Computer Services @X1F @POS:79@@X19│@X0F"
PrintLn "@X10└@X19─────────────────────────────────────────────────────────────────────────────┘@X0F"
PrintLn "@X10┌─────────────────────────────────────────────────────────────────────────────@X19┐@X0F"
DGo 0, INTEGER006
INTEGER001 = 0
:LABEL007
Inc INTEGER001
If (!DEof(0)) DSkip 0, 1
If (Trim(DGet(0, "CURR_BID"), " ") == "000") Then
If (!DEof(0)) PrintLn "@X10│ @X1A", DRecNo(0) - 1, "@X1E)@X1B ", Left(Trim(DGet(0, "ITEM_DESC"), " "), 63) , "@POS:70@@X1E$@X1A", Trim(DGet(0, "MIN_BID"), " ") , "@POS:79@@X19│@X0F"
Else
If (!DEof(0)) PrintLn "@X10│@X1A ", DRecNo(0) - 1, "@X1E)@X1B ", Left(Trim(DGet(0, "ITEM_DESC"), " "), 63) , "@POS:70@@X1E$@X1A", Trim(DGet(0, "CURR_BID"), " ") , "@POS:79@@X19│@X0F"
Endif
If (INTEGER001 == 15) Gosub LABEL008
If (!DEof(0)) Goto LABEL007
:LABEL008
INTEGER006 = INTEGER006 + INTEGER001
If (INTEGER006 > DRecCount(0)) INTEGER006 = 1
PrintLn "@X10└@X19─────────────────────────────────────────────────────────────────────────────┘@X0F"
PrintLn
If (DRecCount(0) - 1 == 0) Then
Print " @X0AYou're the first! @X0E(@X0CQ@X0E)@X0Cuit @X0E(@X0DA@X0E)@X0Ddd an auction item@X0F "
Else
If (INTEGER001 == 15) Then
Print " @X0AItem @X0B#@X0A to View @X0E(@X0B1 @X0E-@X0B ", DRecCount(0) - 1, "@X0E) (@X0CQ@X0E)@X0Cuit @X0E(@X0DA@X0E)@X0Ddd @X0E(@X0AM@X0E)@X0Aore @X0E(@X0AR@X0E)@X0Aemove@X0F "
INTEGER001 = 0
Endif
If (INTEGER001 <> 0) Then
Print " @X0AItem @X0B#@X0A to View @X0E(@X0B1 @X0E-@X0B ", DRecCount(0) - 1, "@X0E) (@X0CQ@X0E)@X0Cuit @X0E(@X0DA@X0E)@X0Ddd @X0E(@X0AM@X0E)@X0Aore @X0E(@X0AR@X0E)@X0Aemove@X0F "
INTEGER001 = 0
Endif
STRING002 = ""
Endif
InputStr "_", STRING002, 11, 3, "1234567890QARMB", 0 + 8
If (((STRING002 == "0") || (STRING002 == "")) || (STRING002 == "M")) Goto LABEL006
If (ToInteger(STRING002) > DRecCount(0) - 1) Goto LABEL006
If (STRING002 == "Q") Goto LABEL013
If (STRING002 == "A") Goto LABEL009
If (STRING002 == "B") Then
PROC003()
Goto LABEL006
Endif
If (STRING002 == "R") Then
Backup 80
ClrEol
STRING002 = ""
InputStr "@X0E Which @X0C# @X0Eto remove @X0A(@X02Must be yours@X0A) _", STRING002, 11, 3, Mask_Num(), 0
Else
DGo 0, ToInteger(STRING002) + 1
Cls
If (CurSec() >= SysopSec()) Then
Print "Seller Name :@X03 ", Trim(DGet(0, "NAME"), " ")
If (Len(Trim(DGet(0, "HBN"), " ")) <> 0) Then
PrintLn "@POS:50@@X0BHigh Bidder :@X03 ", Trim(DGet(0, "HBN"), " ")
Else
PrintLn "@POS:50@@X0BHigh Bidder :@X03 None"
Endif
PrintLn
Else
Newlines 2
Endif
If (Trim(DGet(0, "NAME"), " ") == U_Name()) Then
Print "Seller Name :@X03 ", Trim(DGet(0, "NAME"), " ")
If (Len(Trim(DGet(0, "HBN"), " ")) <> 0) Then
PrintLn "@POS:50@@X0BHigh Bidder :@X03 ", Trim(DGet(0, "HBN"), " ")
Else
PrintLn "@POS:50@@X0BHigh Bidder :@X03 None"
Endif
PrintLn
Else
Newlines 2
Endif
PrintLn "Item: @X0C", DGet(0, "ITEM_DESC")
PrintLn "@X01───────────────────────────────────────────────────────────────────────────────@X0F"
If (Trim(DGet(0, "CURR_BID"), " ") == "000") Then
PrintLn "@X0EMinimum Bid: @X0A", DGet(0, "MIN_BID"), "@POS:30@@X0EBid Increment:@X0A ", DGet(0, "BID_INC"), "@X0E@POS:50@# of Bids:@X0A ", Trim(DGet(0, "NUM_BIDS"), " ")
Else
PrintLn "@X0ECurrent Bid: @X0A", DGet(0, "CURR_BID"), "@X0E@POS:30@Bid Increment:@X0A ", DGet(0, "BID_INC"), "@POS:50@@X0E# of Bids:@X0A ", Trim(DGet(0, "NUM_BIDS"), " ")
Endif
PrintLn "@X01───────────────────────────────────────────────────────────────────────────────@X0F"
PrintLn
PrintLn "@X10┌─────────────────────────────────────────────────────────────────────────────@X19┐@X0F"
PrintLn "@X10│@X1A ", DGet(0, "DESC_1"), "@POS:79@@X19│@X0F"
If (Len(Trim(DGet(0, "DESC_2"), " ")) <> 0) PrintLn "@X10│@X1A ", DGet(0, "DESC_2") , "@POS:79@@X19│@X0F"
If (Len(Trim(DGet(0, "DESC_3"), " ")) <> 0) PrintLn "@X10│@X1A ", DGet(0, "DESC_3") , "@POS:79@@X19│@X0F"
If (Len(Trim(DGet(0, "DESC_4"), " ")) <> 0) PrintLn "@X10│@X1A ", DGet(0, "DESC_4") , "@POS:79@@X19│@X0F"
If (Len(Trim(DGet(0, "DESC_5"), " ")) <> 0) PrintLn "@X10│@X1A ", DGet(0, "DESC_5") , "@POS:79@@X19│@X0F"
If (Len(Trim(DGet(0, "DESC_6"), " ")) <> 0) PrintLn "@X10│@X1A ", DGet(0, "DESC_6") , "@POS:79@@X19│@X0F"
If (Len(Trim(DGet(0, "DESC_7"), " ")) <> 0) PrintLn "@X10│@X1A ", DGet(0, "DESC_7") , "@POS:79@@X19│@X0F"
If (Len(Trim(DGet(0, "DESC_8"), " ")) <> 0) PrintLn "@X10│@X1A ", DGet(0, "DESC_8") , "@POS:79@@X19│@X0F"
If (Len(Trim(DGet(0, "DESC_9"), " ")) <> 0) PrintLn "@X10│@X1A ", DGet(0, "DESC_9") , "@POS:79@@X19│@X0F"
If (Len(Trim(DGet(0, "DESC_10"), " ")) <> 0) PrintLn "@X10│@X1A ", DGet(0, "DESC_10") , "@POS:79@@X19│@X0F"
PrintLn "@X10└@X19─────────────────────────────────────────────────────────────────────────────┘@X0F"
InputStr "Would you like to bid on this item (Y/N) _", STRING002, 14, 1, "YN", 0 + 8
If ((STRING002 == "") || (STRING002 == "N")) Goto LABEL006
Backup 80
ClrEol
If (Trim(DGet(0, "CURR_BID"), " ") == "000") Then
Print "Current Bid is @X0A$ ", ToInteger(DGet(0, "MIN_BID")), "@POS:25@@X0E Your Bid $@X02 "
Else
Print "@X0ECurrent Bid is @X0A$ ", ToInteger(DGet(0, "CURR_BID") + ToInteger(DGet(0, "BID_INC"))), "@POS:25@@X0E Your Bid $@X02 "
Endif
InputStr "_", STRING002, 11, 8, "1234567890Q.", 0 + 8
If (Trim(DGet(0, "CURR_BID"), " ") == "000") Then
If (ToInteger(STRING002) < ToInteger(DGet(0, "MIN_BID")) + ToInteger(DGet(0, "BID_INC"))) Then
Backup 80
ClrEol
PrintLn "@X0CSorry, but your bid was too @X8Clow@X0C, others have bid @X8Fmore@X0C, Your bid is discarded!@X0F"
Delay (5 * 182) / 10
Goto LABEL006
Endif
ElseIf (ToInteger(STRING002) < ToInteger(DGet(0, "CURR_BID")) + ToInteger(DGet(0, "BID_INC"))) Then
Backup 80
ClrEol
PrintLn "@X0CSorry, but your bid was too @X8Clow@X0C, others have bid @X8Fmore@X0C, Your bid @X8Cdiscarded@X0C!@X0F"
Delay (5 * 182) / 10
Goto LABEL006
Endif
DGet 0, "CURR_BID", INTEGER003
DGet 0, "BID2", INTEGER004
DGet 0, "HBN", STRING010
DGet 0, "BN2", STRING011
DPut 0, "CURR_BID", ToInteger(STRING002)
DPut 0, "BID2", INTEGER003
DPut 0, "BID3", INTEGER004
DPut 0, "HBN", U_Name()
DPut 0, "BN2", STRING010
DPut 0, "BN3", STRING011
DPut 0, "BUY_NUM", ""
DPut 0, "NUM_BIDS", DGet(0, "NUM_BIDS") + 1
Goto LABEL006
:LABEL009
STRING002 = ""
Cls
Newlines 3
PrintLn "@X0APlease enter a @X0E63@X0A character description of your Auction item @X09──@X0E(@X0CQ@X0E)@X0Cuit@X09─────┐"
Print " ──────────┘@X0F"
Backup 80
InputStr "_", STRING003, 10, 63, Mask_Ascii(), 0
If (Upper(STRING003) == "Q") Goto LABEL006
Newlines 2
InputStr "Please enter the mimimum bid you will accept $ _", STRING004, 11, 8, "." + Mask_Num(), 0
Newlines 2
InputStr "Please enter the bid increment you desire for this auction item $ _", STRING006, 11, 8, "." + Mask_Num(), 0
Newlines 2
InputStr "Please enter how many days you want this auction item up for bid _", STRING005, 11, 3, Mask_Num(), 0
Cls
Newlines 2
PrintLn "@X0AItem :@X0B ", STRING003
PrintLn
PrintLn "@X0AMinimum Bid @X0E:@X0B ", STRING004, "@X0A@POS:25@Bid Increment @X0E:@X0B ", STRING006, "@POS:50@@X0ADays for Bid @X0E:@X0B ", STRING005
Newline
PrintLn "@X0APlease enter a full description of your auction item, you have 10 lines"
PrintLn "to fully convey the essence of your product. To abort, type a @X0CQ @X0Aby itself"
PrintLn "on a blank line, or to @X0Fsave@X0A type an @X0ES@X0A.@X0F"
PrintLn "@X01────────────────────────────────────────────────────────────────────────────@X0F"
For INTEGER002 = 1 To 10
InputStr "_", TSTRING007(INTEGER002), 11, 75, Mask_Ascii(), 0 + 64
If (Upper(TSTRING007(INTEGER002)) == "Q") Then
For INTEGER002 = 1 To 10
TSTRING007(INTEGER002) = ""
Next
Goto LABEL005
Endif
If (Upper(TSTRING007(INTEGER002)) == "S") Then
TSTRING007(INTEGER002) = ""
Break
Endif
Next
DNew 0
DPut 0, "NAME", U_Name()
DPut 0, "MIN_BID", STRING004
DPut 0, "CURR_BID", "000"
DPut 0, "FINAL_DATE", ToInteger(Date()) + STRING005
DPut 0, "BID_INC", STRING006
DPut 0, "CAT_CODE", "Z"
DPut 0, "ITEM_DESC", STRING003
DPut 0, "NUM_BIDS", "0"
DPut 0, "DESC_1", TSTRING007(1)
DPut 0, "DESC_2", TSTRING007(2)
DPut 0, "DESC_3", TSTRING007(3)
DPut 0, "DESC_4", TSTRING007(4)
DPut 0, "DESC_5", TSTRING007(5)
DPut 0, "DESC_6", TSTRING007(6)
DPut 0, "DESC_7", TSTRING007(7)
DPut 0, "DESC_8", TSTRING007(8)
DPut 0, "DESC_9", TSTRING007(9)
DPut 0, "DESC_10", TSTRING007(10)
DPut 0, "DELETE", "N"
DAdd 0
Goto LABEL006
Endif
DGo 0, ToInteger(STRING002) + 1
If ((Trim(DGet(0, "NAME"), " ") <> U_Name()) && (CurSec() <> SysopSec())) Then
Backup 80
ClrEol
PrintLn " @X0CThat is not your item to delete.@X0F"
Delay (3 * 182) / 10
Goto LABEL006
Endif
DDelete 0
DPack 0
Goto LABEL006
:LABEL010
If (DRecNo(0) == 1) Return
If (DGet(0, "CURR_BID") < 1) Goto LABEL011
FOpen 1, PPEPath() + String(PcbNode()) + ".MSG", 2, 0
FPutLn 1, "Notice from the Auctioneer!"
FPutLn 1, "---------------------------"
FPutLn 1, "Item: ", Trim(DGet(0, "ITEM_DESC"), " ")
FPutLn 1, "---------------------------"
FPutLn 1, "The bid date on your auctioned item has expired. The item"
FPutLn 1, "has been bid on and won by ", Trim(Mixed(DGet(0, "HBN")), " "), " for a high bid of $", Trim(DGet(0, "CURR_BID"), " ")
FPutLn 1
FPutLn 1, "Notification has been sent to ", Trim(Mixed(DGet(0, "HBN")), " "), ", you also may want"
FPutLn 1, "to leave them a message to work out the details of the sale."
FPutLn 1
FPutLn 1, "Thank you for using The Auctioneer!"
FPutLn 1
FPutLn 1
FClose 1
Message 0, Trim(DGet(0, "NAME"), " "), "The Auctioneer!", "Auction Time Expired!", "R", "0", 0, 0, PPEPath() + String(PcbNode()) + ".MSG"
Delete PPEPath() + String(PcbNode()) + ".MSG"
FOpen 1, PPEPath() + String(PcbNode()) + ".MSG", 2, 0
FPutLn 1, "Notice from the Auctioneer!"
FPutLn 1, "---------------------------"
FPutLn 1, "Item: ", Trim(DGet(0, "ITEM_DESC"), " ")
FPutLn 1, "---------------------------"
FPutLn 1, "Your bid on the above auctioned item has been accepted."
FPutLn 1, "You bid a total of $", Trim(DGet(0, "CURR_BID"), " "), "."
FPutLn 1
FPutLn 1, "Notification has been sent to ", Trim(Mixed(DGet(0, "NAME")), " "), ", you also may want"
FPutLn 1, "to leave them a message to work out the details of the sale."
FPutLn 1
FPutLn 1, "Thank you for using The Auctioneer!"
FPutLn 1
FPutLn 1
FClose 1
Message 0, Trim(DGet(0, "HBN"), " "), "The Auctioneer!", "Auction Time Expired!", "R", "0", 0, 0, PPEPath() + String(PcbNode()) + ".MSG"
Delete PPEPath() + String(PcbNode()) + ".MSG"
Return
:LABEL011
FOpen 1, PPEPath() + String(PcbNode()) + ".MSG", 2, 0
FPutLn 1, "Notice from the Auctioneer!"
FPutLn 1, "---------------------------"
FPutLn 1, "Item: ", Trim(DGet(0, "ITEM_DESC"), " ")
FPutLn 1, "---------------------------"
FPutLn 1, "The bid date on your auctioned item has expired. The item"
FPutLn 1, "has *NOT* been bid on."
FPutLn 1
FPutLn 1, "You may want to change your asking price and/or the description"
FPutLn 1, "of the item to make it more attractive to people."
FPutLn 1
FPutLn 1, "Thank you for using The Auctioneer!"
FPutLn 1
FPutLn 1
FClose 1
Message 0, Trim(DGet(0, "NAME"), " "), "The Auctioneer!", "Auction Time Expired!", "R", "0", 0, 0, PPEPath() + String(PcbNode()) + ".MSG"
Delete PPEPath() + String(PcbNode()) + ".MSG"
Return
:LABEL012
Cls
Newlines 2
PrintLn "@X10┌─────────────────────────────────────────────────────────────────────────────@X19┐@X0F"
PrintLn "@X10│@X9C !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! @X19│@X0F"
PrintLn "@X10│@X9C !!!!! !!!!! @X19│@X0F"
PrintLn "@X10│@X9C !!!!! @X1E Your BBS name does NOT match the name compiled into the @X9C!!!!! @X19│@X0F"
PrintLn "@X10│@X9C !!!!! @X1E AUCTION.KEY file. The name in the key file MUST be EXACTLY @X9C!!!!! @X19│@X0F"
PrintLn "@X10│@X9C !!!!! @X1E the same as configured in PCBSETUP. This key is useless! @X9C!!!!! @X19│@X0F"
PrintLn "@X10│@X9C !!!!! !!!!! @X19│@X0F"
PrintLn "@X10│@X9C !!!!! @X1E Decompilation of copyrighted works is a U.S. Federal @X9C!!!!! @X19│@X0F"
PrintLn "@X10│@X9C !!!!! @X1E crime, and punishable by up to 10 years in prison and @X9C!!!!! @X19│@X0F"
PrintLn "@X10│@X9C !!!!! @X1E a $100,000 fine. @X9C!!!!! @X19│@X0F"
PrintLn "@X10│@X9C !!!!! !!!!! @X19│@X0F"
PrintLn "@X10│@X9C !!!!! @X1E Support shareware! This is how we put food on our tables @X9C!!!!! @X19│@X0F"
PrintLn "@X10│@X9C !!!!! @X1E and clothes on our childrens backs. Thank you! @X9C!!!!! @X19│@X0F"
PrintLn "@X10│@X9C !!!!! !!!!! @X19│@X0F"
PrintLn "@X10│@X9C !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! @X19│@X0F"
PrintLn "@X10└@X19─────────────────────────────────────────────────────────────────────────────┘@X0F"
PrintLn STRING021
Delay 1000
DCloseAll
Delete PPEPath() + STRING009 + ".NDX"
End
:LABEL013
DCloseAll
Delete PPEPath() + STRING009 + ".NDX"
If (Exist(PPEPath() + "SCRN1.DSP")) DispFile PPEPath() + "SCRN1.DSP", 0
If (Exist(PPEPath() + "SCRN2.DSP")) DispFile PPEPath() + "SCRN2.DSP", 0
If (Exist(PPEPath() + "SCRN3.DSP")) DispFile PPEPath() + "SCRN3.DSP", 0
If (Exist(PPEPath() + "SCRN4.DSP")) DispFile PPEPath() + "SCRN4.DSP", 0
End
;------------------------------------------------------------------------------
Procedure PROC001()
FOpen 1, PPEPath() + "UNIVERSL.KEY", 0, 0
FDefIn 1
For INTEGER011 = 1 To 3
FDGet TSTRING020(INTEGER011)
Next
FClose 1
STRING019 = TSTRING020(1) + TSTRING020(2)
STRING019 = Strip(STRING019, " ")
For INTEGER012 = 1 To Len(STRING019)
TINTEGER013(INTEGER012) = Asc(Mid(STRING019, INTEGER012, 1))
Next
INTEGER009 = 0
For INTEGER012 = 1 To 99
INTEGER009 = INTEGER009 + TINTEGER013(INTEGER012)
Next
INTEGER010 = INTEGER009 * 659
INTEGER008 = INTEGER010
BOOLEAN001 = 0
If (INTEGER010 <> TSTRING020(3)) Then
BOOLEAN001 = 0
Else
BOOLEAN001 = 1
STRING014 = TSTRING020(1)
STRING013 = TSTRING020(2)
Endif
EndProc
;------------------------------------------------------------------------------
Procedure PROC002()
FOpen 1, PPEPath() + "UNI.KEY", 0, 0
FDefIn 1
For INTEGER011 = 1 To 3
FDGet TSTRING020(INTEGER011)
Next
FClose 1
STRING019 = TSTRING020(1) + TSTRING020(2)
STRING019 = Strip(STRING019, " ")
For INTEGER012 = 1 To Len(STRING019)
TINTEGER013(INTEGER012) = Asc(Mid(STRING019, INTEGER012, 1))
Next
INTEGER009 = 0
For INTEGER012 = 1 To 99
INTEGER009 = INTEGER009 + TINTEGER013(INTEGER012)
Next
INTEGER010 = INTEGER009 * 659
INTEGER008 = INTEGER010
BOOLEAN001 = 0
If (INTEGER010 <> TSTRING020(3)) Then
BOOLEAN001 = 0
Else
BOOLEAN001 = 1
STRING014 = TSTRING020(1)
STRING013 = TSTRING020(2)
Endif
EndProc
;------------------------------------------------------------------------------
Procedure PROC003()
Cls
Newlines 4
PrintLn "@POS:23@@X10┌────────────────────────────────@X19┐@X0F"
PrintLn "@POS:23@@X10│ @X1ESilent Auction@X1F(tm) @X19│@X0F"
PrintLn "@POS:23@@X10└@X19────────────────────────────────┘@X0F"
PrintLn "@POS:23@@X10┌────────────────────────────────@X19┐@X0F"
PrintLn "@POS:23@@X10│ @X1FCopyright (c) 1996@X1A @X19│@X0F"
PrintLn "@POS:23@@X10│ @X1C────────────────────────────── @X19│@X0F"
PrintLn "@POS:23@@X10│ @X1BPractical Computer Services @X19│@X0F"
PrintLn "@POS:23@@X10│ @X1B @X10 @X1B483 Klockner Road@X10 @X19│@X0F"
PrintLn "@POS:23@@X10│ @X1BHamilton, NJ 08619@X13 @X19│@X0F"
PrintLn "@POS:23@@X10│ @X1B @X10 @X1B(609) 584-7947@X13 @X19│@X0F"
PrintLn "@POS:23@@X10│ @X1Ev1.06@X12 @X19│@X0F"
PrintLn "@POS:23@@X10└@X19────────────────────────────────┘@X0F"
Delay (5 * 182) / 10
EndProc
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 3 End
; 9 Cls
; 6 ClrEol
; 86 Goto
; 69 Let
; 8 Print
; 79 PrintLn
; 76 If
; 8 DispFile
; 6 FOpen
; 6 FClose
; 3 FGet
; 39 FPutLn
; 5 Delete
; 9 InputStr
; 2 Gosub
; 3 Return
; 9 Delay
; 1 Inc
; 1 Newline
; 10 Newlines
; 7 Backup
; 3 Message
; 2 FDefIn
; 2 FDGet
; 3 EndProc
; 1 EndFunc
; 1 DOpen
; 2 DPack
; 2 DCloseAll
; 1 DnCreate
; 1 DNew
; 1 DAdd
; 3 DTop
; 3 DGo
; 2 DSkip
; 1 DBlank
; 2 DDelete
; 4 DGet
; 30 DPut
;
;
; ■ Functions used :
;
; 10 *
; 8 /
; 81 +
; 9 -
; 30 ==
; 18 <>
; 13 <
; 10 <=
; 2 >
; 23 >=
; 43 !
; 22 &&
; 13 ||
; 15 Len(
; 6 Upper()
; 6 Mid()
; 7 Left()
; 4 Asc()
; 38 Trim()
; 1 Random()
; 5 Date()
; 4 U_Name()
; 5 Strip()
; 11 String()
; 4 Mask_Num()
; 2 Mask_Ascii()
; 2 PCBDat()
; 35 PPEPath()
; 11 PcbNode()
; 2 ReadLine()
; 2 SysopSec()
; 2 CurSec()
; 11 Exist()
; 2 Abs()
; 22 ToInteger()
; 3 Mixed()
; 4 DEof()
; 9 DRecCount()
; 3 DRecNo()
; 66 DGet()
;
;------------------------------------------------------------------------------
;
; Analysis flags : ds
;
; d - Access PCBOARD.DAT ■ 2
; Program gets the full pathname to PCBOARD.DAT, this may be usefull
; for many PPE so they can find various informations on the system
; (system paths, max number of lines in messages, ...) but it may also
; be a way to gather vital informations.
; ■ Search for : PCBDAT()
;
; s - Sysop level access ■ 5
; Program is reading the sysop access level, this may be normal
; but still it is very suspect. It is the best way to give a user
; all priviledges. Check!
; ■ Search for : SYSOPSEC()
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 10 For/Next
; 0 While/EndWhile
; 28 If/Then or If/Then/Else
; 0 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------